package sucre

class ConsultarNotasController {
    def loginService
    def beforeInterceptor = [action:this.&auth]
    def auth = {
        def result =loginService.validarAcceso(
            session["seguridad_usuario"],
            session["seguridad_funcionesHabilitadas"],
            controllerName,actionName,request.getRemoteAddr().toString())
        if(!result) {
            redirect(controller:"login",action:"auth",params:['acceso':false])
            return false
        }
    }
    def busqueInscripcion = { String newCedulaAlumno, String newCorreoAlumno, String newMateria, String newSeccion ->
        println "newCedulaAlumno: " +newCorreoAlumno
        println "newCedulaAlumno: " +newCedulaAlumno
        println "newCedulaAlumno: " +newMateria
        println "newCedulaAlumno: " +newSeccion
        def htmlInput = "<input type='hidden' name='inscripciones' id='inscripciones' value='" 
        
        def html = ""
        def alumno
        if (newCedulaAlumno != null ) {
            alumno = Alumno.findByCedula(newCedulaAlumno)
        }
        if (newCorreoAlumno != null ) {
            alumno = Alumno.findByCorreo(newCorreoAlumno)
        } 
        if (alumno == null) { 
            html ="Usted no está asociado a esta unidad curricular."
        } else {
            html+= "</br></br><label style='color:#900000; font-size:12px'><strong>Cédula:</strong></label> " + alumno.cedula + ""
            html += "</br></br><label style='color:#900000; font-size:12px'><strong>Nombres:</strong></label> " + alumno.nombres + " " + alumno.apellidos + ""
            html+="</br></br><table width='620' align='center' style='border: 1px solid #CECECE; border-collapse: collapse;' cellpadding='0' cellspacing='0' > <tr align='left' style='font-weight:bold; background-color: #DCDCDC; color:#FFFFFF;'><td height='28' style='padding:5px;font-weight:bold;'>Cédula</td><td height='28' style='padding:5px;font-weight:bold;'>Nombre</td><td height='28' style='padding:5px;font-weight:bold;'>Materia</td><td height='28' style='padding:5px; font-weight:bold;'>Sección</td><td height='28' style='padding:5px;font-weight:bold;'>Calificación</td></tr>"
            def query = {
                eq('alumno',alumno)
                if (newMateria != null && !newMateria.equals('')){
                    def materia = Materia.get(newMateria)
                    eq('materia',materia)       
                }
                if (newSeccion != null && !newSeccion.equals('')){
                    def seccion = Seccion.get(newSeccion)
                    eq('seccion',seccion)       
                }
            }
            def inscripcionList = Inscripcion.createCriteria().list(params,query)
            inscripcionList.each{ inscripcion ->
                htmlInput += inscripcion.id + ","
                html += "<tr style=' backgroung-color=#CECECE'>"
                html += "<td style='border: 1px solid #CECECE; padding:5px;background-color: #f2f3f3'>"  + inscripcion.alumno.cedula + "</td>" 
                html += "<td style='border: 1px solid #CECECE; padding:5px; background-color: #f2f2f2'; >"  + inscripcion.alumno.nombres + "</td>" 
                html += "<td style='border: 1px solid #CECECE; padding:5px; background-color: #f2f2f2'>"  + inscripcion.materia.nombre + "</td>" 
                html += "<td style='border: 1px solid #CECECE; padding:5px; background-color: #f2f2f2'>"  + inscripcion.seccion.descripcion + "</td>" 
                html += "<td style='border: 1px solid #CECECE; padding:5px; background-color: #f2f2f2'><input onkeypress='return acceptInput(event,0,this,false)' maxlength='2' name='"+inscripcion.id+"' width='30px'value='"+inscripcion.calificacion+"'/></td>" 
                html += "</tr>"
            }
            if (inscripcionList.size() <= 0) {
                html = "Usted no está asociado a esta unidad curricular."
            }
            html += "</table>" 
        }
        html += "</table>" 
        htmlInput += "' /> <br/>"
        return htmlInput + html
    }
    def index = { }
    
    def reder1 = {
        
        render busqueInscripcion.call(params.alumno, null, params.materia, null)
    }
    
    def index_alumno = {}
    def create = {
        def alumnos = "["
        Alumno.list().each{alumno ->
            alumnos +=  '{value: "' + alumno.cedula +'", '
            alumnos +=  'label: "' + alumno.cedula +'", '
            alumnos +=  'desc: "' + alumno.nombres + " " + alumno.apellidos+ '"},'
        }
        alumnos += "]"
        def query = {
            order("nombre", "asc")
        }
        def materiaList = Materia.createCriteria().list(params,query)
        [alumnos:alumnos, materiaList:materiaList]
    }
    def create_alumno = {
        def usuario = Usuario.findByLogin(session["seguridad_usuario"])
        def alumno=Alumno.findByCorreo(usuario.email)
        def query = {
            order("nombre", "asc")
        }
        def materiaList = Materia.createCriteria().list(params,query)
        [alumnos:alumno,materiaList:materiaList]
        //render busqueInscripcion.call(null, alumno.correo, null, null);
        
    }
}
